Adaptive Instruction Scheduling for the Itanium

نویسندگان

  • Benoit Hudson
  • Stephen Somogyi
  • Shobha Venkataraman
چکیده

Many problems that compilers want to solve are NP-Hard to solve optimally. Therefore, compilers authors typically use fast ad-hoc methods that strike a trade-off between good code quality and fast compile time. We investigated taking the decision on the trade-off out of the compiler author’s hands: based on profile information or static estimates, the compiler will tilt the balance in favour of code quality on hot segments of code, compensating by going for fast compile time on cold segments. The particular problem we decided to attack was instruction scheduling on the Itanium. We find inconclusive results, but we have an excuse: our machine model was inaccurate.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Efficient Modeling of Itanium Architecture during Instruction Scheduling using Extended Finite State Automata

Effective and efficient modeling and management of hardware resources have always been critical toward generating highly efficient code in optimizing compilers. The instruction templates and dispersal rules of the Itanium architecture add new complexity in managing resource constraints to instruction scheduler. We extended a finite state automaton (FSA) approach to efficiently manage all key re...

متن کامل

CSE231 project report —- survey on instruction scheduling

This paper surveys past research on instruction scheduling for exploiting more Instruction Level Parallelism (ILP). We focus on static instruction scheduling performed by compiler. The hardware platform for implementing such compiler techniques, i.e. VLIW is also reviewed. We also give comparison between the code scheduling done dynamically by out-of-order machines and that by compilers, along ...

متن کامل

Compilation for the Itanium Processor

This paper describes a just-in-time (JIT) Java1 compiler for the Intel Itanium processor. The Itanium processor is an example of an Explicitly Parallel Instruction Computing (EPIC) architecture and thus relies on aggressive and expensive compiler optimizations for performance. Static compilers for Itanium use aggressive global scheduling algorithms to extract instruction-level parallelism. In a...

متن کامل

Wavefront Scheduling : Path Based Data Representation andScheduling

The IA-64 architecture is rich with features that enable aggressive exploitation of instruction-level parallelism. Features such as speculation, predication, multiway branches and others provide compilers with new opportunities for the extraction of parallelism in programs. Code scheduling is a central component in any compiler for the IA-64 architecture. This paper describes the implementation...

متن کامل

An efficient memory operations optimization technique for vector loops on Itanium 2 processors

To keep up with a large degree of instruction level parallelism (ILP), the Itanium 2 cache systems use a complex organization scheme: load/store queues, banking and interleaving. In this paper, we study the impact of these cache systems on memory instructions scheduling. We demonstrate that, if no care is taken at compile time, the non-precise memory disambiguation mechanism and the banking str...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003